import numpy as np

# numpy.arange() 创建给定数值范围的数组
# start	起始值，默认是 0。
# stop	终止值，注意生成的数组元素值不包含终止值。
# step	步长，默认为 1。
# dtype	可选参数，指定 ndarray 数组的数据类型。
x = np.arange(8)
print(x)  # [0 1 2 3 4 5 6 7]
x = np.arange(1, 10, 2)
print(x)  # [1 3 5 7 9]

# numpy.linspace() 指定的数值区间内，返回均匀间隔的一维等差数组，默认均分 50 份
# start：代表数值区间的起始值；
# stop：代表数值区间的终止值；
# num：表示数值区间内要生成多少个均匀的样本。默认值为 50；
# endpoint：默认为 True，表示数列包含 stop 终止值，反之不包含；
# retstep：默认为 True，表示生成的数组中会显示公差项，反之不显示；
# dtype：代表数组元素值的数据类型。
a = np.linspace(1, 10, 10)  # 生成10个样本
print(a)  # [ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
arr = np.linspace(10, 20, 5, endpoint=False)
print("数组数值范围 ：", arr)  # 数组数值范围 ： [10. 12. 14. 16. 18.]
x = np.linspace(1, 2, 5, retstep=True)
print(x)  # (array([1.  , 1.25, 1.5 , 1.75, 2.  ]), 0.25)  其中 0.25 为等差数列的公差

# numpy.logspace 同样返回一个 ndarray 数组，它用于创建等比数组
# start	序列的起始值：base**start。
# stop	序列的终止值：base**stop。
# num	数值范围区间内样本数量，默认为 50。
# endpoint	默认为 True 包含终止值，反之不包含。
# base	对数函数的 log 底数，默认为10。
# dtype	可选参数，指定 ndarray 数组的数据类型。
a = np.logspace(1.0, 2.0, num=10)
print(a)
# [ 10.         12.91549665  16.68100537  21.5443469   27.82559402
#  35.93813664  46.41588834  59.94842503  77.42636827  100.      ]
# 下面是 base = 2 的对数函数
a = np.logspace(1, 10, num=10, base=2)
print(a)  # [ 2. 4. 8. 16. 32. 64. 128. 256. 512. 1024.]


